package org.dromara.pe.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import org.dromara.pe.domain.DeviceScoreRaw;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;


/**
 * 【请填写功能名称】视图对象 phy_device_score_raw
 *
 * @author Lion Li
 * @date 2024-09-25
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = DeviceScoreRaw.class)
public class DeviceScoreRawImportVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 学年
     */
    @ExcelProperty(value = "学年")
    private String stuYear;
    /**
     * 名字
     */
    @ExcelProperty(value = "姓名")
    private String name;
//    @ExcelProperty(value = "")
    private Long id;

    /**
     * 运动成员ID
     */
    @ExcelProperty(value = "学号")
    private String uid;

    private String className;


    /**
     * 运动项目ID
     */
    @ExcelProperty(value = "运动项目名称", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "pe_project_name")
    private String sportId;

    /**
     * 运动项目名称
     */
//    @ExcelProperty(value = "运动项目名称")
    private String sportName;

    /**
     * 身高
     */
//    @ExcelProperty(value = "身高")
    private BigDecimal height;

    /**
     * 体重
     */
//    @ExcelProperty(value = "体重")
    private BigDecimal weight;

    /**
     * 运动原始成绩
     */
    @ExcelProperty(value = "记录")
    private Long sportScore;

    /**
     * 计算得分成绩
     */
    @ExcelProperty(value = "得分")
    private Long score;

    /**
     * 成绩来源类型（0-设备 1-手动）
     */
    @ExcelProperty(value = "数据来源", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "phy_scope_type")
    private Long type;

    /**
     * 训练站设备唯一代码
     */
//    @ExcelProperty(value = "训练站设备代码")
    private String stationSn;

    /**
     * 得分等级
     */
    @ExcelProperty(value = "得分等级")
    private String level;

    /**
     * 成绩结算日期
     */
    @ExcelProperty(value = "成绩结算时间")
    private Date completedTime;




    /**
     * 成绩类型（0-锻炼 1-体测）
     */
    @ExcelProperty(value = "成绩类型", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "pe_score_type")
    private Long scoreType;
}
